package cn.itcast.web.controller;

import org.springframework.beans.factory.annotation.Autowired;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * 抽取公共父类
 */
public class BaseController {

	/**
	 * 在springmvc中可以将 HttpServletRequest，HttpServletResponse，HttpSession
	 * 通过Autowired的形式注入到方法中，简化开发方式
	 */
	/**
	 * spring中注入的对象，默认是单例
	 *    对于在springmvc中的request等对象，可以通过@Autowired注入，不会有线程安全问题
	 *    （1） 请求发送到mvc核心控制器，mvc自动的创建一个request对象，
	 *    （2） 自动的将对象，绑定到当前线程 threadLocal
	 *    （3） 当在controller中使用@Autowired注入request对象的时候，自动的从当前线程获取
	 */
	@Autowired
	protected HttpServletRequest request;
	@Autowired
	protected HttpServletResponse response;
	@Autowired
	protected HttpSession session;

	/**
	 * 获取当前登陆用户
	 */
}
